package com.lagou.mapper;

import com.lagou.domain.User1;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {

    // 根据id查询用户
     public User1 findUserById(int id);

//     查询所有用户
     public List<User1> findAllResultMap();


     /*
     多条件查询方式一
     */
    public List<User1> findUserByIdAndUsername1(int id, String username);

    /*
        多条件查询方式二
    */
    public List<User1> findUserByIdAndUsername2(@Param("id") int id, @Param("username") String username);


    /*
       多条件查询方式三
   */
    public List<User1> findUserByIdAndUsername3(User1 user);


/*
*       模糊查询：方式一
* */
    public List<User1> findByUsername(String username);
    /*
     *       模糊查询：方式二
     * */
    public List<User1> findByUsername2(String username);

    /*
    添加用户：获取返回主键方式一
     */
    public void saveUser(User1 user);

    /*
    添加用户：获取返回主键方式二
     */
    public void saveUser2(User1 user);

    /*
     动态sql之if：多条件查询
    */
    public List<User1> findByIdAndUsernameIf(User1 user);


    /*
     动态sql之set：动态更新
    */
    public void updateIf(User1 user);

    /*
     动态sql之foreach：多值查询（集合）
    */
    public List<User1> findByList(List<Integer> ids);

    /*
         动态sql之foreach：多值查询（数组）
        */
    public List<User1> findByArray(Integer[] ids);
}
